﻿#pragma once
#ifndef CHATDB_H
#define CHATDB_H

#include <QObject>
#include <QtSql/QSqlDatabase>
#include <QtSql/QSqlQuery>
#include <QDebug>
#include <QSqlError>
#include "clog.h"
#include "conf.h"

class ChatDB : public QObject
{
    Q_OBJECT
private:
    explicit ChatDB(QObject *parent = nullptr);
    static ChatDB* m_pChatDB;
    QSqlDatabase m_db;//用于管理客户端数据库
    QSqlDatabase m_userDB;//用于管理用户自己的数据库
public:
    static ChatDB* getInstance();
    bool initSysDB();
    bool initUserDB(const QString& path);
    bool openSysDB();
    bool openUserDB();
    void closeDB();
    void addUser(const QString& uid,const QString& nickname);//将用户添加到本地数据库中，使用默认头像
    void addUser(const QString& uid,const QString& nickname,const QString headUrl);
    QString getImgUrl(const QString& id);
    QString getNickName(const QString& id);
    QString getSignatrue(const QString& id);
    void deleteUserInfo(const QString& id);
    void updateUserInfo(const Json::Value& root,int type);//type 0 个人信息
signals:

};

#endif // CHATDB_H
